/// \file base.h.
///============================================================================\n
/// Name        : base.h\n
/// Author      : Gergely Lukacsy (info@dlog-reasoner.org)\n
/// Version     : 0.01\n
/// Copyright   : DERI\n
/// Description : Basic type and class definitions, header file.\n
/// 
/// This file is part of the DParser and DLog 2 projects.\n
///============================================================================

#ifndef BASE_H_
#define BASE_H_


//@{
/** Empty constants for parameter modes. */
#define IN
#define OUT
#define INOUT
//@}

//@{
/** Aliases for STD/built-in classes. */
#define VECTOR std::vector
#define SET std::set
#define STACK std::stack
#define STRING std::string
#define PAIR std::pair
#define MAP std::map
#define INT int
#define DWORD unsigned int
#define VOID void
#define BYTE unsigned char
//@}

// forward declaration
class SROIQKB; 

/// Class holding a singleton static object.
class SINGLETON {
public:
	// The only global variable in the whole code. Will refactor later.
	static SROIQKB* pKB;
};

#endif /* BASE_H_ */
